-
Notifications
You must be signed in to change notification settings - Fork 2
Add linux arm to CI examples workflow #381
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
This commit extends the CI examples configuration to include support for the Linux Arm with node 20 (oldest supported) and current (latest stable release). This is a progress towards ensuring the driver support on other architectures beyond x86_64.
|
@wprzytula We may consider whether we want to have the current matrix (x64: node 20, 22, 24, current, arm: node 20, current) run for each commit. This is already quite a few targets, and I did not see any failures that were specific to one node version (other than the napi memory problem). We may consider limiting the number of combinations we run for each commit (maybe 1-2 node versions for x64 and 1 for arm) and running the full matrix as part of the extended CI. |
This may also be a good reason to extend the integration tests to run them in the extended CI on all supported node version (we run on node 20 for now) |
|
Reqesting review despite failing CI - this appears to be some problem on the GH side. Added CI passes, so I will re-run failing one closer to merging |
@adespawn Let's do that as discussed in person: a small number of (node, arch) pairs for the usual CI and a much richer set for the extended CI. |
|
Let's merge this, and I will split it into regular and extended CI in the next PR |
| matrix: | ||
| settings: | ||
| host: | ||
| - ubuntu-latest | ||
| - ubuntu-24.04-arm | ||
| node: [ 20, 22, 24, current ] | ||
| include: | ||
| - host: ubuntu-latest | ||
| target: x86_64-unknown-linux-gnu | ||
| build: npm run build -- --target x86_64-unknown-linux-gnu | ||
| node: [ 20, 22, 24, current ] | ||
| name: Build and run examples - ${{ matrix.settings.target }} - node@${{ matrix.node }} | ||
| runs-on: ${{ matrix.settings.host }} | ||
| - host: ubuntu-24.04-arm | ||
| target: aarch64-unknown-linux-gnu | ||
| build: npm run build -- --target aarch64-unknown-linux-gnu | ||
| exclude: | ||
| - host: ubuntu-24.04-arm | ||
| node: 22 | ||
| - host: ubuntu-24.04-arm | ||
| node: 24 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
In the follow-up with further refinements, please write comments explaining our testing matrix strategy: which combinations we want to include and which not.
This commit extends the CI examples configuration to include support
for the Linux Arm with node 20 (oldest supported) and the current
(latest stable release). This is progress towards ensuring
driver support on other architectures beyond x86_64.
Progress towards: #292, #50